草庐IT

c++ - 需要将 MS Visual C++ 移植到 Linux G++

全部标签

c++ - 可移植可执行 DOS header 长度

我一直在研究这个图像来构建一个可移植的可执行文件:https://i.imgur.com/LIImg.jpg图像/演练表示PEheader从0x40(十进制为64)开始。但是,十六进制转储显示DOSheader的长度为32字节。每个字段是否以4个字节打包?查看WinNT.h中的IMAGE_DOS_HEADER,好像也不合适。它有16个2字节的字段,一个4长度的2字节数组,一个10长度的2字节数组,以及指向PE位置的4字节指针。无论你怎么看,它加起来都不等于64... 最佳答案 However,thehexadecimaldumpsa

windows - VC++ 可执行文件需要什么才能运行?

我是VC++等的新手。博学的观众能否让我知道-VisualC++可执行文件需要什么才能运行?我们想在VC++中创建一个产品,我们想知道它何时在最低限度的Windows机器上安装和运行,它是否需要任何其他软件? 最佳答案 各自的VisualC++RedistributablePackages默认情况下不会随Windows一起安装,但除非静态包含运行时库,否则需要运行VC++可执行文件。看看MicrosoftVisualStudio~C/C++RuntimeLibrary~Static/dynamiclinking有关静态包含运行时或使

c++ - Qt 在 Windows 中部署应用程序需要的 dll

mingw编译器目录中有一个工具,当以输出的exe文件作为参数调用时,它会将所有需要的dll复制到当前目录。我不记得名字了,我在互联网上找不到它。有谁知道它叫什么? 最佳答案 该工具称为windeployqt。 关于c++-Qt在Windows中部署应用程序需要的dll,我们在StackOverflow上找到一个类似的问题: https://stackoverflow.com/questions/31687093/

windows - 是否需要从 Windows SDK 重新分发 DirectX?

使用2010年6月版的DirectXSDK编写程序时,有必要在安装程序中包含几个可再分发的cab文件,以便程序在全新的Windows安装上运行。DirectX现在包含在WindowsSDK中,但我无法找到有关在构建安装程序时是否需要任何类型的可再分发文件的信息。假设我使用Windows10SDK。我的程序只能在全新的Windows7安装上运行吗?还是我缺少某种可再分发的东西?这是我自己发现的:1)Windows10SDK目录中似乎有一个“Redist”目录,其中包含d3dcompiler_47.dll和d3dcsx_47.dll。我的假设是,如果链接了等效的库,那么我将需要在我的应用程

windows - 为什么当 flAllocationType = MEM_RESERVE 时 VirtualAlloc() 需要 flProtect = PAGE_NOACCESS?

以下对VirtualAlloc()的调用在x64上返回错误ERROR_INVALID_PARAMETER:LPVOIDlp=VirtualAlloc(NULL,0x10000000000,MEM_RESERVE,0);也就是说,我必须使用PAGE_NOACCESS作为VirtualAlloc的最后一个参数。但是当我查看PAGE_NOACCESShere的定义时,我发现:Disablesallaccesstothecommittedregionofpages.Anattempttoreadfrom,writeto,orexecutethecommittedregionresultsina

windows - 批处理脚本失败 - 无法在没有引号的情况下将文本输出到文件,但是不需要引号

我正在尝试运行一个批处理脚本,该脚本将一堆文本写入一个在SQL命令窗口中运行的.sql文件。我试图让我的批处理脚本输出一行文本:插入TEST_TABLE(param1,param2)值('JohnSmith','Test1');我下面的代码不起作用,CMD在运行.bat文件后立即崩溃:@echooff(echoinsertintoTEST_TABLE(param1,param2)values('JohnSmith','Test1');)>TEST.sqlpause但是,当我更改它并添加引号时:@echooff(echo"insertintoTEST_TABLE(param1,param

windows - Windows 上的\Device\PhysicalMemory 需要说明

\Device\PhysicalMemory是一个段对象,在Win32API术语中是内存映射文件。鉴于其名称,它可能是一个完全由RAM支持的MMF;是物理页面的一对一映射。这几乎就是我的问题:这个部分对象代表非分页物理内存还是非分页系统地址空间?如果是前者,那么物理内存中的“漏洞”呢?例如,在支持PAE的系统上,系统地址空间下的物理内存实际上可能是“碎片化的”。如果我在将View映射到\Device\PhysicalMemory部分对象后访问这些漏洞,会发生什么情况?我之所以感到困惑,是因为MmMapIoSpace函数采用PHYSICAL_ADDRESSPhysicalAddress参

windows - 需要为USB外围设备编写驱动程序?

我正在设计一个USB外围设备,它偶尔会连接到WindowsPC,并在每个方向上传输几KB的数据。将有一个自定义PC应用程序使用专有协议(protocol)(即用于USB有效载荷)控制数据传输。我在以下链接中看到Microsoft描述了如何为USB设备编写驱动程序。但是我需要一个吗?DevelopingWindowsclientdriversforUSBdevicesPC应用程序是我们打算知道如何与设备通信的唯一应用程序,因此从应用程序共享的角度来看,不需要驱动程序。我能否直接将自定义协议(protocol)烘焙到应用程序中,让应用程序向设备发送“原始USB”,而无需单独的驱动程序?

windows - 运行 Cordova Windows 应用程序需要安装签名证书

我添加,使用以下方法成功构建CordovaWindows应用程序:cordovaplatformaddwindowscordovabuildwindows----apx=8.1-phone--arch=x86但是,当我尝试在模拟器上运行windows应用程序时:cordovaemulatewindows----apx=8.2-phone--arch=x86它总是说:Foundpackage:C:\project\platforms\windows\AppPackages\CordovaApp.Windows_1.0.0.0_x86_debug_Test\CordovaApp.Windo

c - Malloc 是否分配了比需要的更多的内存?

这是学校的C作业,但我遇到了一些奇怪的事情,我不知道它是否正常。我必须接受命令行参数,一个例子是-ia.b所以在我的程序中,我使用malloc动态分配内存char*fileName=NULL;fileName=malloc(strlen(argv[i])*sizeof(char));//errortestingetcstrcpy(fileName,argv[i]);工作正常,但我通过visualstudio调试器查看内存,这是在内存位置分配的内存位置,对我来说,它需要的空间更大:0x01608b98"ÍÍÍÍÍýýýýB`\x1˜?`\x1\xf1¼O{º"如果我像这样转换malloc